Current methods of managing processor performance states (sometimes known as P states) are usually based on processor utilization. Since high utilization often means using a high operational frequency and concomitant high power, this approach often results in losing opportunities to save energy. For example, when a memory-dependent task is performed, with generally high utilization, the processor can stall at some point waiting for data. Running the processor at a high frequency during the stall period can result in needless energy use.